// src/utils/http.js
import axios from 'axios';
import router from "../router/index"

// 创建 Axios 实例
const instance = axios.create({
    baseURL: import.meta.env.VITE_API_BASE_URL || 'http://localhost:3000', // 从环境变量读取
    timeout: 10000,
    headers: {
        'Content-Type': 'application/json',
    },
});

// 请求拦截器（添加认证 Token）
instance.interceptors.request.use(
    (config) => {
        const token = localStorage.getItem('token');
        console.log(token);
        if (token) {
            config.headers.token = `${token}`;
        }
        return config;
    },
    (error) => Promise.reject(error)
);

// 响应拦截器（统一处理错误）
instance.interceptors.response.use(
    (response) => response, // 直接返回解析后的数据
    (error) => {
        if (error.response?.status === 401) {
            // alert('身份已过期，请重新登录！');
            router.push("/")
            // 可在此跳转到登录页
        } else if (error.response?.status === 403) {

            router.push("/403")
        }
        return Promise.reject(error);
    }
);

export default instance;